#Copyright (C) 2010 The Android Open Source Project
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#



LOCAL_PATH := $(call my-dir)/../../src
include $(CLEAR_VARS)

WN_LIBS ?= ../../
GENDIR := $(LOCAL_PATH)/../gen/
LANGDIR := $(LOCAL_PATH)/../lang/

$(GENDIR)%.cpp:$(LANGDIR)%.re $(GENDIR)/WNScriptParser.cpp
	@echo Generating lexer from $*.re
	@re2c --no-generation-date -o $(GENDIR)$*.cpp -b $(LANGDIR)$*.re

$(GENDIR)%.cpp:$(LANGDIR)%.y
	@echo Generating parser from $*.y
	@lemon T=$(LANGDIR)lempar.c $(LANGDIR)$*.y
	@mv $(LANGDIR)$*.h $(GENDIR)$*.h
	@mv $(LANGDIR)$*.c $(GENDIR)$*.cpp
	@mv $(LANGDIR)$*.out $(GENDIR)$*.out

LOCAL_C_INCLUDES := $(LOCAL_PATH)/../../
LOCAL_CFLAGS := $(shell $(WN_LIBS)../Utilities/llvm-config-android --cppflags)
LOCAL_CPP_EXTENSION := .cpp
LOCAL_MODULE    := WNScripting
LOCAL_SRC_FILES := ../gen/WNQuickLexer.cpp ../gen/WNScriptLexer.cpp ../gen/WNScriptParser.cpp WNDataType.cpp WNExpression.cpp WNExpressionList.cpp WNFunctionHeaderList.cpp WNFunctionManager.cpp WNIdentifierMap.cpp WNInstruction.cpp WNInteropHelpers.cpp WNInteropSimpleIO.cpp WNLexerFunctions.cpp WNLValue.cpp WNParseNode.cpp WNParseTree.cpp WNScopedVariableList.cpp WNScriptingEngine.cpp WNTopLevelElement.cpp WNTypeManager.cpp 

include $(BUILD_STATIC_LIBRARY)
